<template>
  <div class="student">
    <h2>学生名称：{{ name }}</h2>
    <h2>学生性别：{{ gender }}</h2>
    <h2>当前num：{{ number }}</h2>
    <button @click="add">点我num++</button>
    <button @click="sendStudentName">把学生名给App</button>
    <button @click="unbind">解绑azhan事件</button>
    <button @click="death">销毁Student实例对象vc</button>
  </div>
</template>

<script>
export default {
  name: "StudentInfo",
  data() {
    return {
      name: "阿占",
      gender: "男",
      number: 0,
    };
  },
  methods: {
    add() {
      console.log("add被调用");
      this.number++;
    },
    sendStudentName() {
      // 触发student实例上的azhan事件
      // 并未给子组件传props
      this.$emit("azhan", this.name, 666, 777, 888);
      // this.$emit("demo");
    },
    unbind() {
      // 解绑一个自定义事件
      this.$off("azhan");

      // 解绑多个自定义事件
      // this.$off(["azhan", "demo"]);

      // 解绑所有自定义事件
      // this.$off();
    },
    death() {
      // 销毁了当前Student组件实例，销毁后，所有Student实例的自定义事件全都不奏效了
      this.$destroy();
    },
  },
};
</script>
<style scoped>
.student {
  background-color: orange;
  padding: 5px;
  margin-top: 30px;
}
</style>
